#include "TrueText/Config.h"
#include "TrueText/FontEffectOutline.h"
#include "FontEffectOutlineImpl.h"

namespace TrueText {

FontEffectOutline::FontEffectOutline()
	: impl(new FontEffectOutlineImpl())
{
}

FontEffectOutline::FontEffectOutline(const FontEffectOutline& rhs)
	: impl(new FontEffectOutlineImpl(*rhs.impl))
{
}

const FontEffectOutline& FontEffectOutline::operator=(const FontEffectOutline& rhs)
{
	if (&rhs == this)
		return *this;

	impl.reset(new FontEffectOutlineImpl(*rhs.impl));

	return *this;
}

FontEffectOutline::~FontEffectOutline()
{
}

const OutlineInfo& FontEffectOutline::GetOutlineInfo() const
{
	return impl->GetOutlineInfo();
}

void FontEffectOutline::SetOutlineInfo(const OutlineInfo& value)
{
	impl->SetOutlineInfo(value);
}

bool FontEffectOutline::IsEnabled() const
{
	return impl->IsEnabled();
}

void FontEffectOutline::Enable(bool fEnable)
{
	impl->Enable(fEnable);
}

FontEffectOutlineImpl* FontEffectOutline::getImpl() const
{
	return impl.get();
}

}